// import MyButton from './Button';
// import MyInput from './Input';
// import MyLink from './Link';

// const MyUI = {};

//组件存放池
// const COMPONENTS = [
//   MyButton,
//   MyInput,
//   MyLink
// ]

/**
 * 组件开发的install方法
 * @param {*} Vue vm实例
 * @param {*} options 组件对象
 */

// MyUI.install = function (Vue, options) {

//   //用户有输入组件代码时才执行
//   if (options && options.components) {
//     const components = options.components;

//     // console.log(components);
//     //['MyButton', 'MyInput']

//     //遍历组件对象
//     //获取组件对象里的组件名称
//     components.forEach((componentName) => {
//       //遍历组件池
//       //获取自定义的组件对象
//       COMPONENTS.forEach((component) => {
//         // console.log(component);
//         //{name: 'MyButton', props: {…}, _compiled: true, render: ƒ, …}

//         //组件名称一致时说明找到该组件
//         if (componentName === component.name) {
//           //按需注册组件
//           //Vue.component(组件名称, 组件对象)
//           Vue.component(component.name, component);
//         }
//       });
//     });
//   } else {
//     //用户没有有输入组件代码时才执行
//     COMPONENTS.forEach((component) => {
//       //全局注册
//       Vue.component(component.name, component);
//     });
//   }
// }

// 按需注册1：注册按需加载的组件对象
const MyButton = {};
const MyInput = {};
const MyLink = {};
const MySelect = {};
const MyStars = {};
const MyMagnifier = {};
const MyCarousel = {};
const TreeMenu = {};
const MyModal = {};
const MySelector = {};


//按需注册2：导入组件对象
import Button from './Button';
import Input from './Input';
import Link from './Link';
import Select from './Select';
import Stars from './Stars';
import Magnifier from './Magnifier';
import Carousel from './Carousel';
import Tree from './TreeMenu';
import Modal from './Modal';
import Selector from './Selector';




//按需注册3.分别给组件对象注册
MyButton.install = function (Vue) {
  Vue.component(Button.name, Button);
}
MyInput.install = function (Vue) {
  Vue.component(Input.name, Input);
}
MyLink.install = function (Vue) {
  Vue.component(Link.name, Link);
}
MySelect.install = function (Vue) {
  Vue.component(Select.name, Select);
}
MyStars.install = function (Vue) {
  Vue.component(Stars.name, Stars);
}
MyMagnifier.install = function (Vue) {
  Vue.component(Magnifier.name, Magnifier);
}
MyCarousel.install = function (Vue) {
  Vue.component(Carousel.name, Carousel);
}
TreeMenu.install = function (Vue) {
  Vue.component(Tree.name, Tree);
}
MyModal.install = function (Vue) {
  Vue.component(Modal.name, Modal);
}
MySelector.install = function (Vue) {
  Vue.component(Selector.name, Selector);
}

// 按需注册4.导出组件对象
export {
  MyButton,
  MyInput,
  MyLink,
  MySelect,
  MyStars,
  MyMagnifier,
  MyCarousel,
  TreeMenu,
  MyModal,
  MySelector
}

// export default MyUI;